منابع مشابه
Good programming in transactional memory: Game theory meets multicore architecture
In a multicore transactional memory (TM) system, concurrent execution threads interact and interfere with each other through shared memory. The less interference a program provokes the better for the system. However, as a programmer is primarily interested in optimizing her individual code’s performance rather than the system’s overall performance, she does not have a natural incentive to provo...
متن کاملGeneric Programming Needs Transactional Memory
Locks are the most widely used synchronization mechanism for threads. It is well-known that naive use of locks can easily lead to program failures through deadlock. Such deadlock is usually avoided through careful lock ordering. We argue that this approach is incompatible with several increasingly important programming practices that rely on libraries invoking (“calling-back”) essentially unkno...
متن کاملTransactional Memory
Shared memory parallel architectures present a single unified address space to each processor. Usually the memory is physically distributed across the system but each processor is able to access any part of it through a single address space. The system hardware is responsible for presenting this abstraction to each processor. Communication between processors is done implicitly through normal me...
متن کاملTransactional Memory
Today's methods of writing programs that are executed on shared-memory multiprocessors systems rely mostly on locking mechanism. On one hand, those methods enable programmers to write correct multi-threaded programs that access shared resources; on the other hand, lock usage reduces performance due to suboptimal use of them. In this survey paper we will show several implementations of Transacti...
متن کاملMulti-versioning in Transactional Memory
Reducing the number of aborts is one of the biggest challenges of most transactional systems: existing TMs may abort many transactions that could, in fact, commit without violating correctness. Historically, the commonly used method for reducing the abort rate was maintaining multiple object versions. Multiversion concurrency control is a classical approach for providing concurrent access to th...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Theoretical Computer Science
سال: 2011
ISSN: 0304-3975
DOI: 10.1016/j.tcs.2010.09.008